function new_p=solutionStruct(p)
    % free dof in structure
    free_dof=setdiff((1:p.global_dof_num)',p.fix_dof);
    
    % solute the equation :KU=F --> U=K\F
    U=p.global_stiffness_matrix(free_dof,free_dof)\p.node_forces(free_dof);
    
    p.displacements(free_dof)=U;
    % displacements=zeros(p.global_dof_num,1);
    
    p.node_forces=p.global_stiffness_matrix*p.displacements;
    
    new_p=p;
end